//
//  LLModelClassProperty.h
//  XinGe
//
//  Created by xtomy on 13-8-14.
//  Copyright (c) 2013年 Tomy. All rights reserved.
//

#import <Foundation/Foundation.h>
@interface LLModelClassProperty : NSObject

/** The name of the declared property (not the ivar name) */
@property (copy, nonatomic) NSString* name;

/** A primitive type name ("float", "short", etc) or a class name  */
@property (assign, nonatomic) Class type;

/** The name of the protocol the property conforms to (or nil) */
@property (copy, nonatomic) NSString* protocol;

/** If YES, it can be missing in the input data, and the input would be still valid */
@property (assign, nonatomic) BOOL isOptional;

/** If YES - don't call any transformers on this property's value */
@property (assign, nonatomic) BOOL isStandardJSONType;

/** If YES - create a mutable object for the value of the property */
@property (assign, nonatomic) BOOL isMutable;

/** If YES - create models on demand for the array members */
@property (assign, nonatomic) BOOL convertsOnDemand;

@end
